/**
 * Copyright (c) 2000-2012 Liferay, Inc. All rights reserved.
 *
 * This library is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Lesser General Public License as published by the Free
 * Software Foundation; either version 2.1 of the License, or (at your option)
 * any later version.
 *
 * This library is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
 * details.
 */

package com.mad.bikepony.model;

import com.liferay.portal.model.ModelWrapper;

import java.util.HashMap;
import java.util.Map;

/**
 * <p>
 * This class is a wrapper for {@link Delivery}.
 * </p>
 *
 * @author    nicola
 * @see       Delivery
 * @generated
 */
public class DeliveryWrapper implements Delivery, ModelWrapper<Delivery> {
	public DeliveryWrapper(Delivery delivery) {
		_delivery = delivery;
	}

	public Class<?> getModelClass() {
		return Delivery.class;
	}

	public String getModelClassName() {
		return Delivery.class.getName();
	}

	public Map<String, Object> getModelAttributes() {
		Map<String, Object> attributes = new HashMap<String, Object>();

		attributes.put("deliveryId", getDeliveryId());
		attributes.put("deliveryCode", getDeliveryCode());
		attributes.put("trackingCode", getTrackingCode());
		attributes.put("senderAddress", getSenderAddress());
		attributes.put("senderAdditionalInfo", getSenderAdditionalInfo());
		attributes.put("senderEmail", getSenderEmail());
		attributes.put("recipientAddress", getRecipientAddress());
		attributes.put("recipientAdditionalInfo", getRecipientAdditionalInfo());
		attributes.put("recipientEmail", getRecipientEmail());
		attributes.put("state", getState());
		attributes.put("agentId", getAgentId());
		attributes.put("submissionTimestamp", getSubmissionTimestamp());
		attributes.put("pickupTimestamp", getPickupTimestamp());
		attributes.put("deliveryTimestamp", getDeliveryTimestamp());
		attributes.put("recipientSignature", getRecipientSignature());
		attributes.put("estimatedPickupTime", getEstimatedPickupTime());
		attributes.put("estimatedDeliveryTime", getEstimatedDeliveryTime());

		return attributes;
	}

	public void setModelAttributes(Map<String, Object> attributes) {
		Long deliveryId = (Long)attributes.get("deliveryId");

		if (deliveryId != null) {
			setDeliveryId(deliveryId);
		}

		String deliveryCode = (String)attributes.get("deliveryCode");

		if (deliveryCode != null) {
			setDeliveryCode(deliveryCode);
		}

		String trackingCode = (String)attributes.get("trackingCode");

		if (trackingCode != null) {
			setTrackingCode(trackingCode);
		}

		String senderAddress = (String)attributes.get("senderAddress");

		if (senderAddress != null) {
			setSenderAddress(senderAddress);
		}

		String senderAdditionalInfo = (String)attributes.get(
				"senderAdditionalInfo");

		if (senderAdditionalInfo != null) {
			setSenderAdditionalInfo(senderAdditionalInfo);
		}

		String senderEmail = (String)attributes.get("senderEmail");

		if (senderEmail != null) {
			setSenderEmail(senderEmail);
		}

		String recipientAddress = (String)attributes.get("recipientAddress");

		if (recipientAddress != null) {
			setRecipientAddress(recipientAddress);
		}

		String recipientAdditionalInfo = (String)attributes.get(
				"recipientAdditionalInfo");

		if (recipientAdditionalInfo != null) {
			setRecipientAdditionalInfo(recipientAdditionalInfo);
		}

		String recipientEmail = (String)attributes.get("recipientEmail");

		if (recipientEmail != null) {
			setRecipientEmail(recipientEmail);
		}

		Integer state = (Integer)attributes.get("state");

		if (state != null) {
			setState(state);
		}

		Long agentId = (Long)attributes.get("agentId");

		if (agentId != null) {
			setAgentId(agentId);
		}

		Long submissionTimestamp = (Long)attributes.get("submissionTimestamp");

		if (submissionTimestamp != null) {
			setSubmissionTimestamp(submissionTimestamp);
		}

		Long pickupTimestamp = (Long)attributes.get("pickupTimestamp");

		if (pickupTimestamp != null) {
			setPickupTimestamp(pickupTimestamp);
		}

		Long deliveryTimestamp = (Long)attributes.get("deliveryTimestamp");

		if (deliveryTimestamp != null) {
			setDeliveryTimestamp(deliveryTimestamp);
		}

		String recipientSignature = (String)attributes.get("recipientSignature");

		if (recipientSignature != null) {
			setRecipientSignature(recipientSignature);
		}

		Long estimatedPickupTime = (Long)attributes.get("estimatedPickupTime");

		if (estimatedPickupTime != null) {
			setEstimatedPickupTime(estimatedPickupTime);
		}

		Long estimatedDeliveryTime = (Long)attributes.get(
				"estimatedDeliveryTime");

		if (estimatedDeliveryTime != null) {
			setEstimatedDeliveryTime(estimatedDeliveryTime);
		}
	}

	/**
	* Returns the primary key of this delivery.
	*
	* @return the primary key of this delivery
	*/
	public long getPrimaryKey() {
		return _delivery.getPrimaryKey();
	}

	/**
	* Sets the primary key of this delivery.
	*
	* @param primaryKey the primary key of this delivery
	*/
	public void setPrimaryKey(long primaryKey) {
		_delivery.setPrimaryKey(primaryKey);
	}

	/**
	* Returns the delivery ID of this delivery.
	*
	* @return the delivery ID of this delivery
	*/
	public long getDeliveryId() {
		return _delivery.getDeliveryId();
	}

	/**
	* Sets the delivery ID of this delivery.
	*
	* @param deliveryId the delivery ID of this delivery
	*/
	public void setDeliveryId(long deliveryId) {
		_delivery.setDeliveryId(deliveryId);
	}

	/**
	* Returns the delivery code of this delivery.
	*
	* @return the delivery code of this delivery
	*/
	public java.lang.String getDeliveryCode() {
		return _delivery.getDeliveryCode();
	}

	/**
	* Sets the delivery code of this delivery.
	*
	* @param deliveryCode the delivery code of this delivery
	*/
	public void setDeliveryCode(java.lang.String deliveryCode) {
		_delivery.setDeliveryCode(deliveryCode);
	}

	/**
	* Returns the tracking code of this delivery.
	*
	* @return the tracking code of this delivery
	*/
	public java.lang.String getTrackingCode() {
		return _delivery.getTrackingCode();
	}

	/**
	* Sets the tracking code of this delivery.
	*
	* @param trackingCode the tracking code of this delivery
	*/
	public void setTrackingCode(java.lang.String trackingCode) {
		_delivery.setTrackingCode(trackingCode);
	}

	/**
	* Returns the sender address of this delivery.
	*
	* @return the sender address of this delivery
	*/
	public java.lang.String getSenderAddress() {
		return _delivery.getSenderAddress();
	}

	/**
	* Sets the sender address of this delivery.
	*
	* @param senderAddress the sender address of this delivery
	*/
	public void setSenderAddress(java.lang.String senderAddress) {
		_delivery.setSenderAddress(senderAddress);
	}

	/**
	* Returns the sender additional info of this delivery.
	*
	* @return the sender additional info of this delivery
	*/
	public java.lang.String getSenderAdditionalInfo() {
		return _delivery.getSenderAdditionalInfo();
	}

	/**
	* Sets the sender additional info of this delivery.
	*
	* @param senderAdditionalInfo the sender additional info of this delivery
	*/
	public void setSenderAdditionalInfo(java.lang.String senderAdditionalInfo) {
		_delivery.setSenderAdditionalInfo(senderAdditionalInfo);
	}

	/**
	* Returns the sender email of this delivery.
	*
	* @return the sender email of this delivery
	*/
	public java.lang.String getSenderEmail() {
		return _delivery.getSenderEmail();
	}

	/**
	* Sets the sender email of this delivery.
	*
	* @param senderEmail the sender email of this delivery
	*/
	public void setSenderEmail(java.lang.String senderEmail) {
		_delivery.setSenderEmail(senderEmail);
	}

	/**
	* Returns the recipient address of this delivery.
	*
	* @return the recipient address of this delivery
	*/
	public java.lang.String getRecipientAddress() {
		return _delivery.getRecipientAddress();
	}

	/**
	* Sets the recipient address of this delivery.
	*
	* @param recipientAddress the recipient address of this delivery
	*/
	public void setRecipientAddress(java.lang.String recipientAddress) {
		_delivery.setRecipientAddress(recipientAddress);
	}

	/**
	* Returns the recipient additional info of this delivery.
	*
	* @return the recipient additional info of this delivery
	*/
	public java.lang.String getRecipientAdditionalInfo() {
		return _delivery.getRecipientAdditionalInfo();
	}

	/**
	* Sets the recipient additional info of this delivery.
	*
	* @param recipientAdditionalInfo the recipient additional info of this delivery
	*/
	public void setRecipientAdditionalInfo(
		java.lang.String recipientAdditionalInfo) {
		_delivery.setRecipientAdditionalInfo(recipientAdditionalInfo);
	}

	/**
	* Returns the recipient email of this delivery.
	*
	* @return the recipient email of this delivery
	*/
	public java.lang.String getRecipientEmail() {
		return _delivery.getRecipientEmail();
	}

	/**
	* Sets the recipient email of this delivery.
	*
	* @param recipientEmail the recipient email of this delivery
	*/
	public void setRecipientEmail(java.lang.String recipientEmail) {
		_delivery.setRecipientEmail(recipientEmail);
	}

	/**
	* Returns the state of this delivery.
	*
	* @return the state of this delivery
	*/
	public int getState() {
		return _delivery.getState();
	}

	/**
	* Sets the state of this delivery.
	*
	* @param state the state of this delivery
	*/
	public void setState(int state) {
		_delivery.setState(state);
	}

	/**
	* Returns the agent ID of this delivery.
	*
	* @return the agent ID of this delivery
	*/
	public long getAgentId() {
		return _delivery.getAgentId();
	}

	/**
	* Sets the agent ID of this delivery.
	*
	* @param agentId the agent ID of this delivery
	*/
	public void setAgentId(long agentId) {
		_delivery.setAgentId(agentId);
	}

	/**
	* Returns the submission timestamp of this delivery.
	*
	* @return the submission timestamp of this delivery
	*/
	public long getSubmissionTimestamp() {
		return _delivery.getSubmissionTimestamp();
	}

	/**
	* Sets the submission timestamp of this delivery.
	*
	* @param submissionTimestamp the submission timestamp of this delivery
	*/
	public void setSubmissionTimestamp(long submissionTimestamp) {
		_delivery.setSubmissionTimestamp(submissionTimestamp);
	}

	/**
	* Returns the pickup timestamp of this delivery.
	*
	* @return the pickup timestamp of this delivery
	*/
	public long getPickupTimestamp() {
		return _delivery.getPickupTimestamp();
	}

	/**
	* Sets the pickup timestamp of this delivery.
	*
	* @param pickupTimestamp the pickup timestamp of this delivery
	*/
	public void setPickupTimestamp(long pickupTimestamp) {
		_delivery.setPickupTimestamp(pickupTimestamp);
	}

	/**
	* Returns the delivery timestamp of this delivery.
	*
	* @return the delivery timestamp of this delivery
	*/
	public long getDeliveryTimestamp() {
		return _delivery.getDeliveryTimestamp();
	}

	/**
	* Sets the delivery timestamp of this delivery.
	*
	* @param deliveryTimestamp the delivery timestamp of this delivery
	*/
	public void setDeliveryTimestamp(long deliveryTimestamp) {
		_delivery.setDeliveryTimestamp(deliveryTimestamp);
	}

	/**
	* Returns the recipient signature of this delivery.
	*
	* @return the recipient signature of this delivery
	*/
	public java.lang.String getRecipientSignature() {
		return _delivery.getRecipientSignature();
	}

	/**
	* Sets the recipient signature of this delivery.
	*
	* @param recipientSignature the recipient signature of this delivery
	*/
	public void setRecipientSignature(java.lang.String recipientSignature) {
		_delivery.setRecipientSignature(recipientSignature);
	}

	/**
	* Returns the estimated pickup time of this delivery.
	*
	* @return the estimated pickup time of this delivery
	*/
	public long getEstimatedPickupTime() {
		return _delivery.getEstimatedPickupTime();
	}

	/**
	* Sets the estimated pickup time of this delivery.
	*
	* @param estimatedPickupTime the estimated pickup time of this delivery
	*/
	public void setEstimatedPickupTime(long estimatedPickupTime) {
		_delivery.setEstimatedPickupTime(estimatedPickupTime);
	}

	/**
	* Returns the estimated delivery time of this delivery.
	*
	* @return the estimated delivery time of this delivery
	*/
	public long getEstimatedDeliveryTime() {
		return _delivery.getEstimatedDeliveryTime();
	}

	/**
	* Sets the estimated delivery time of this delivery.
	*
	* @param estimatedDeliveryTime the estimated delivery time of this delivery
	*/
	public void setEstimatedDeliveryTime(long estimatedDeliveryTime) {
		_delivery.setEstimatedDeliveryTime(estimatedDeliveryTime);
	}

	public boolean isNew() {
		return _delivery.isNew();
	}

	public void setNew(boolean n) {
		_delivery.setNew(n);
	}

	public boolean isCachedModel() {
		return _delivery.isCachedModel();
	}

	public void setCachedModel(boolean cachedModel) {
		_delivery.setCachedModel(cachedModel);
	}

	public boolean isEscapedModel() {
		return _delivery.isEscapedModel();
	}

	public java.io.Serializable getPrimaryKeyObj() {
		return _delivery.getPrimaryKeyObj();
	}

	public void setPrimaryKeyObj(java.io.Serializable primaryKeyObj) {
		_delivery.setPrimaryKeyObj(primaryKeyObj);
	}

	public com.liferay.portlet.expando.model.ExpandoBridge getExpandoBridge() {
		return _delivery.getExpandoBridge();
	}

	public void setExpandoBridgeAttributes(
		com.liferay.portal.service.ServiceContext serviceContext) {
		_delivery.setExpandoBridgeAttributes(serviceContext);
	}

	@Override
	public java.lang.Object clone() {
		return new DeliveryWrapper((Delivery)_delivery.clone());
	}

	public int compareTo(com.mad.bikepony.model.Delivery delivery) {
		return _delivery.compareTo(delivery);
	}

	@Override
	public int hashCode() {
		return _delivery.hashCode();
	}

	public com.liferay.portal.model.CacheModel<com.mad.bikepony.model.Delivery> toCacheModel() {
		return _delivery.toCacheModel();
	}

	public com.mad.bikepony.model.Delivery toEscapedModel() {
		return new DeliveryWrapper(_delivery.toEscapedModel());
	}

	@Override
	public java.lang.String toString() {
		return _delivery.toString();
	}

	public java.lang.String toXmlString() {
		return _delivery.toXmlString();
	}

	public void persist()
		throws com.liferay.portal.kernel.exception.SystemException {
		_delivery.persist();
	}

	public byte[] getRecipientSignatureImage() {
		return _delivery.getRecipientSignatureImage();
	}

	public void setRecipientSignatureImage(byte[] image) {
		_delivery.setRecipientSignatureImage(image);
	}

	public com.mad.bikepony.model.Agent getAgent()
		throws com.liferay.portal.kernel.exception.PortalException,
			com.liferay.portal.kernel.exception.SystemException {
		return _delivery.getAgent();
	}

	/**
	 * @deprecated Renamed to {@link #getWrappedModel}
	 */
	public Delivery getWrappedDelivery() {
		return _delivery;
	}

	public Delivery getWrappedModel() {
		return _delivery;
	}

	public void resetOriginalValues() {
		_delivery.resetOriginalValues();
	}

	private Delivery _delivery;
}